package com.shop.cereshop.commons.domain.report.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 举报提交DTO
 *
 * @author
 */
@Data
@ApiModel(value = "ReportSubmitDTO", description = "举报提交参数")
public class ReportSubmitDTO {


    /**
     * 举报目标类型：1-动态 2-视频 3-评论 4-用户
     */
    @ApiModelProperty(value = "举报目标类型：1-图文 2-视频 3-评论 4-用户", required = true)
    @NotNull(message = "举报目标类型不能为空")
    private Integer targetType;

    /**
     * 举报目标ID（动态ID/视频ID/评论ID/用户ID）
     */
    @ApiModelProperty(value = "举报目标ID（动态ID/评论ID/用户ID）", required = true)
    @NotNull(message = "举报目标ID不能为空")
    private Long targetId;

    /**
     * 举报类型ID（关联字典表）
     */
    @ApiModelProperty(value = "举报类型ID（关联字典表）", required = true)
    @NotNull(message = "举报类型不能为空")
    private Long reportTypeId;

    /**
     * 举报原因描述
     */
    @ApiModelProperty(value = "举报原因描述")
    private String reportReason;

    /**
     * 举报证据图片列表
     */
    @ApiModelProperty(value = "举报证据图片列表")
    private List<String> reportImages;

    @ApiModelProperty(value = "0-不是IM聊天 1-是IM聊天 只有TargetType 等于4 的时候才必填")
    private Integer isIM ;
}
